function showMessage(s, o) {
	var $msg = document.getElementById("msg-cont")
	if($msg){
		if(o){
			$msg.style.left=o.offsetLeft+"px";
			$msg.style.top=(o.offsetTop-30)+"px";
		}else{
			$msg.style.left=document.body.clientWidth/2-100+"px";
			$msg.style.top=document.body.clientHeight/2-10+"px";
		}
		var $children=$msg.childNodes;
		if($children){
			$children[0].innerHTML=s;
		}else{
			$msg.innerHTML="<span>"+s+"</span>";
		}
	}else{
		$msg = document.createElement("div");
		$msg.id="msg-cont"; 
		$msg.className="t-error-popup";
		$msg.style.position="absolute";
		$msg.style.zIndex=100;
		if(o){
			$msg.style.left=o.offsetLeft+"px";
			$msg.style.top=(o.offsetTop-30)+"px";
		}else{
			$msg.style.left=document.body.clientWidth/2-100+"px";
			$msg.style.top=document.body.clientHeight/2-10+"px";
		}
//		var lang = navigator.systemLanguage?navigator.systemLanguage:navigator.language;
		$msg.innerHTML="<span>"+s+"</span>";
		document.body.appendChild($msg);
		try {
			$msg.onclick=function(){
				document.body.removeChild($msg);
			}
			setTimeout(function(){if($msg){document.body.removeChild($msg)}},5000);
		} catch (e) {}
	}
};
function StringBuffer(str){this._strings = new Array;if(str)this.append(str);return this;};
StringBuffer.prototype.append=function (str){this._strings.push(str);return this;} ;
StringBuffer.prototype.toString=function (){return this._strings.join("");};